package com.fdd.op.sdk.request.api.seal;

import com.fdd.op.sdk.ApiRuleException;
import com.fdd.op.sdk.BaseFddRequest;
import com.fdd.op.sdk.constants.Constants;
import com.fdd.op.sdk.internal.mapping.RequestField;
import com.fdd.op.sdk.response.api.seal.AddAuthorizeByUrlResponse;

import java.util.Map;

public class AddAuthorizeByUrlRequest extends BaseFddRequest<AddAuthorizeByUrlResponse> {
    @Override
    public String getApiMethodName() {
        return "/base/api/seal/addAuthorizeByUrl";
    }

    @Override
    public Map<String, Object> getTextParams() {
        return null;
    }

    @Override
    public Class<AddAuthorizeByUrlResponse> getResponseClass() {
        return AddAuthorizeByUrlResponse.class;
    }

    @Override
    public void check() throws ApiRuleException {

    }

    @Override
    public String getHttpMethod() {
        return Constants.METHOD_POST;
    }

    @RequestField
    private String sealId;

    @RequestField
    private String authorizerAccountId;

    @RequestField
    private String tpAuthorizerAccountId;

    @RequestField
    private String authorizedAccountId;

    @RequestField
    private String tpAuthorizedAccountId;

    @RequestField
    private String notifyUrl;

    @RequestField
    private String accessCode;

    @RequestField
    private String expiryDateBegin;

    @RequestField
    private String expiryDateEnd;

    @RequestField
    private Integer urlTimeOut;

    public String getSealId() {
        return sealId;
    }

    public void setSealId(String sealId) {
        this.sealId = sealId;
    }

    public String getAuthorizerAccountId() {
        return authorizerAccountId;
    }

    public void setAuthorizerAccountId(String authorizerAccountId) {
        this.authorizerAccountId = authorizerAccountId;
    }

    public String getTpAuthorizerAccountId() {
        return tpAuthorizerAccountId;
    }

    public void setTpAuthorizerAccountId(String tpAuthorizerAccountId) {
        this.tpAuthorizerAccountId = tpAuthorizerAccountId;
    }

    public String getAuthorizedAccountId() {
        return authorizedAccountId;
    }

    public void setAuthorizedAccountId(String authorizedAccountId) {
        this.authorizedAccountId = authorizedAccountId;
    }

    public String getTpAuthorizedAccountId() {
        return tpAuthorizedAccountId;
    }

    public void setTpAuthorizedAccountId(String tpAuthorizedAccountId) {
        this.tpAuthorizedAccountId = tpAuthorizedAccountId;
    }

    public String getNotifyUrl() {
        return notifyUrl;
    }

    public void setNotifyUrl(String notifyUrl) {
        this.notifyUrl = notifyUrl;
    }

    public String getAccessCode() {
        return accessCode;
    }

    public void setAccessCode(String accessCode) {
        this.accessCode = accessCode;
    }

    public String getExpiryDateBegin() {
        return expiryDateBegin;
    }

    public void setExpiryDateBegin(String expiryDateBegin) {
        this.expiryDateBegin = expiryDateBegin;
    }

    public String getExpiryDateEnd() {
        return expiryDateEnd;
    }

    public void setExpiryDateEnd(String expiryDateEnd) {
        this.expiryDateEnd = expiryDateEnd;
    }

    public Integer getUrlTimeOut() {
        return urlTimeOut;
    }

    public void setUrlTimeOut(Integer urlTimeOut) {
        this.urlTimeOut = urlTimeOut;
    }
}
